home *** CD-ROM | disk | FTP | other *** search
/ Netware Super Library / Netware Super Library.iso / mis_cnvt / txt2db / cdate2dt.prg next >
Text File  |  1994-01-05  |  1KB  |  44 lines

  1. /***
  2.  * Program : CDATE2DT.PRG
  3.  * Notice  : Copyright (c) BITwise Computer Services, 1991-1992
  4.  * Date    : 09/17/92
  5.  * Author  : David Christian
  6.  * Purpose : Converts many date string formats into Clipper date
  7.  * Notes   : Compile with /n /w
  8.  *
  9.  * Revised :
  10.  *
  11. */
  12.  
  13. #include"txt2dbf.ch"
  14.  
  15. FUNCTION B_CDATE2DT(cDate,cFormat)
  16.    // SYNTAX: <expD1>:=B_CDATE2DT(<expC1>,[<expC2>])
  17.    //         - CONVERTS DATE STRING cDate TO CLIPPER DATE
  18.    //         - cFormat IS DATE STRING FORMAT (DEFAULT "M2D2Y2")
  19.    //         - RETURNS EMPTY() DATE IF INVALID FORMAT OR STRING
  20.    //         - SAMPLE FORMATS:
  21.    //            "M2D2Y2"  =>  "122592"   MMDDYY
  22.    //            "M2D2Y4"  =>  "12251992" MMDDYYYY
  23.    //            "D2M2Y2"  =>  "251292"   DDMMYY
  24.    //
  25.    LOCAL cMM:="", cDD:="", cYY:="", nX:=0, cType:="", nLen:=0, nPos:=1
  26.    DEFAULT cFormat TO "M2D2Y2"
  27.    cFormat:=UPPER(cFormat)
  28.    FOR nX:=1 TO 6 STEP 2
  29.       cType:=SUBSTR(cFormat,nX,1)
  30.       nLen:=VAL(SUBSTR(cFormat,nX+1,1))
  31.       DO CASE
  32.       CASE cType=="M"
  33.          cMM:=SUBSTR(cDate,nPos,nLen)
  34.       CASE cType=="D"
  35.          cDD:=SUBSTR(cDate,nPos,nLen)
  36.       CASE cType=="Y"
  37.          cYY:=SUBSTR(cDate,nPos,nLen)
  38.       ENDCASE
  39.       nPos+=nLen
  40.    NEXT
  41. RETURN(CTOD(cMM+"/"+cDD+"/"+cYY))
  42.  
  43. //EOF
  44.